
package org.afem.java.basics.entities;

/*
 * @author Andrés Felipe España
 */
public class Nif {  
    public final static String LETRAS = "TRWAGMYFPDXBNJZSQVHLCKE";
    
    private int dni;
    private char letra;

    public Nif() {
        dni = 0;
        letra = 'T';
    }

    public Nif(int dni, char letra) {
        this.dni = dni;
        this.letra = calcularLetraNif(dni);
    }

    private char calcularLetraNif(int dni) {
       return LETRAS.charAt(dni % 23);
    }

     public int getDni() {
        return dni;
    }

    public void setDni(int dni) {
        this.dni = dni;
        letra = calcularLetraNif(dni);
    }

    private void mostrarNif() {
        System.out.println(toString());
    }

    @Override
    public String toString() {
        return String.format("%08d-%c", dni, letra);
    }
   
}
